home *** CD-ROM | disk | FTP | other *** search
/ Libris Britannia 4 / science library(b).zip / science library(b) / PROGRAMM / DB_CLIPP / 2611.ZIP / MANIFEST.ZIP / SUMPRN.PRG < prev    next >
Text File  |  1988-04-14  |  11KB  |  439 lines

  1. *********************
  2. *    SUMPRIN.PRG    *
  3. *  CHOICE 4, SUB 8  *
  4. *   APR 14, 1988    *
  5. *     GUY DUBEC     *
  6. *********************
  7. @ 10,10 CLEA
  8. STOR ' ' TO CHOICE
  9. @ 11,11 TO 18,68
  10. @ 12,13 SAY '1 - Print a list of Generators'
  11. @ 13,13 SAY '2 - Print a list of Transporters'
  12. @ 14,13 SAY '3 - Print a list of TSD facilities'
  13. @ 15,13 SAY '4 - Print a list of Waste Codes with Volume Totals'
  14. @ 16,13 SAY '5 - Print a list of Handling Codes with Volume ì
  15. Totals'
  16. @ 17,13 SAY 'R - Return to previous menu'
  17. @ 20,13 SAY 'Enter your choice : ' GET CHOICE
  18. READ
  19. DO CASE
  20.   CASE CHOICE='1'
  21. @ 7,0 CLEA
  22. STOR 2 TO LINE
  23. STOR 60 TO MAX
  24. STOR 'F' TO END
  25. @ 10,7 SAY 'Full information on all Generators in the system will ì
  26. be printed.'
  27. DO WHIL END='F'
  28.   USE FACILITY INDEX FACID
  29.   @ 0,0
  30.   SET DEVI TO PRIN
  31.   IF LINE=2
  32.     @ LINE,27 SAY 'Listing of all Generators'
  33.     STOR LINE+2 TO LINE
  34.   ELSE
  35.     @ LINE,5 SAY 'EPA ID & Name : '+EPAID+'  '+TRIM(NAME)
  36.     STOR LINE+1 TO LINE
  37.     @ LINE,5 SAY 'Address       : '+TRIM(ADD1)+', '+TRIM(ADD2)
  38.     STOR LINE+1 TO LINE
  39.     @ LINE,23 SAY TRIM(CITY)+', '+STATE+'  ì
  40. '+ZIP+SPACE(5)+'('+SUBSTR(PHONE,1,3)+')'+SUBSTR(PHONE,4,3)+'-'+SUBì
  41. STR(PHONE,7)
  42.     STOR LINE+3 TO LINE
  43.     IF LINE+3>MAX
  44.       EJECT
  45.       STOR 2 TO LINE
  46.       SKIP
  47.     ELSE
  48.       SKIP
  49.     ENDIF
  50.   ENDIF
  51.   @ LINE+1,0 SAY ' '
  52.   EJECT
  53.   SET DEVI TO SCRE
  54.   CLOS DATA
  55. ENDDO
  56.   CASE CHOICE='2'
  57. @ 7,0 CLEA
  58. STOR 2 TO LINE
  59. STOR 60 TO MAX
  60. STOR 'F' TO END
  61. @ 10,6 SAY 'Full information on all Transporters in the system will ì
  62. be printed.'
  63. DO WHIL END='F'
  64.   USE TRANS INDEX TID
  65.   @ 0,0
  66.   SET DEVI TO PRIN
  67.   IF LINE=2
  68.     @ LINE,26 SAY 'Listing of all Transporters'
  69.     STOR LINE+2 TO LINE
  70.   ELSE
  71.     @ LINE,5 SAY 'EPA ID & Name : '+EPAID+'  '+TRIM(NAME)
  72.     STOR LINE+1 TO LINE
  73.     @ LINE,5 SAY 'Address       : '+TRIM(ADD1)+', '+TRIM(ADD2)
  74.     STOR LINE+1 TO LINE
  75.     @ LINE,23 SAY TRIM(CITY)+', '+STATE+'  ì
  76. '+ZIP+SPACE(5)+'('+SUBSTR(PHONE,1,3)+')'+SUBSTR(PHONE,4,3)+'-'+SUBì
  77. STR(PHONE,7)
  78.     STOR LINE+3 TO LINE
  79.     IF LINE+3>MAX
  80.       EJECT
  81.       STOR 2 TO LINE
  82.       SKIP
  83.     ELSE
  84.       SKIP
  85.     ENDIF
  86.   ENDIF
  87.   @ LINE+1,0 SAY ' '
  88.   EJECT
  89.   SET DEVI TO SCRE
  90.   CLOS DATA
  91. ENDDO
  92.   CASE CHOICE='3'
  93. @ 7,0 CLEA
  94. STOR 2 TO LINE
  95. STOR 60 TO MAX
  96. STOR 'F' TO END
  97. @ 10,4 SAY 'Full information on all TSD Facilities in the system will ì
  98. be printed.'
  99. DO WHIL END='F'
  100.   USE DISP INDEX DID
  101.   @ 0,0
  102.   SET DEVI TO PRIN
  103.   IF LINE=2
  104.     @ LINE,24 SAY 'Listing of all TSD Facilities'
  105.     STOR LINE+2 TO LINE
  106.   ELSE
  107.     @ LINE,5 SAY 'EPA ID & Name : '+EPAID+'  '+TRIM(NAME)
  108.     STOR LINE+1 TO LINE
  109.     @ LINE,5 SAY 'Address       : '+TRIM(ADD1)+', '+TRIM(ADD2)
  110.     STOR LINE+1 TO LINE
  111.     @ LINE,23 SAY TRIM(CITY)+', '+STATE+'  ì
  112. '+ZIP+SPACE(5)+'('+SUBSTR(PHONE,1,3)+')'+SUBSTR(PHONE,4,3)+'-'+SUBì
  113. STR(PHONE,7)
  114.     STOR LINE+3 TO LINE
  115.     IF LINE+3>MAX
  116.       EJECT
  117.       STOR 2 TO LINE
  118.       SKIP
  119.     ELSE
  120.       SKIP
  121.     ENDIF
  122.   ENDIF
  123.   @ LINE+1,0 SAY ' '
  124.   EJECT
  125.   SET DEVI TO SCRE
  126.   CLOS DATA
  127. ENDDO
  128.   CASE CHOICE='4'
  129. @ 7,0 CLEA
  130. STOR 'F' TO END
  131. STOR 2 TO LINE
  132. STOR 60 TO MAX
  133. STOR 0 TO COUNT
  134. STOR 000000 TO TOTON, TOT1, TOT2, TOT3, TOT4
  135. STOR SPACE(4) TO EPA, EPA1, EPA2, EPA3, EPA4
  136. STOR SPACE(6) TO STATE, ST1, ST2, ST3, ST4
  137. @ 10,10 SAY 'A listing of EPA Waste Codes, followed by State ì
  138. Waste Codes'
  139. @ 12,13 SAY 'will be printed, each with its total volume ì
  140. disposed.'
  141. @ 14,18 SAY 'Report start date : '+START+' and end date : '+STOP
  142. DO WHIL END='F'
  143.   USE WASTE INDEX
  144.   INDEX ON EPACODE TO EPAWST
  145.   INDEX ON STCODE TO STWST
  146.   SET ORDER TO 1
  147.   SET FIELDS TO EPACODE, TON
  148.   TOTAL ON EPACODE TO TOTS FIELDS TON
  149.   SELECT B
  150.   USE TOTS
  151.   IF EPACODE=' '
  152.     SKIP
  153.   ELSE
  154.     DO WHIL END='F'
  155.       SET DEVICE TO PRIN
  156.       IF LINE=2
  157.         @ LINE,16 SAY 'Listing of EPA Waste Codes and Disposal '+;
  158. 'Volumes'
  159.         STOR LINE+2 TO LINE
  160.         @ LINE,15 SAY 'Code     Tons       Code     Tons       '+;
  161. 'Code     Tons      Code     Tons'
  162.         STOR LINE+1 TO LINE
  163.         @ LINE,14 SAY REPLICATE('*',53)
  164.         STOR LINE+2 TO LINE
  165.       ELSE
  166.         DO WHIL EPACODE<>' '
  167.           IF LINE=MAX
  168.             EJECT
  169.             STOR 2 TO LINE
  170.           ENDIF
  171.           IF EOF()
  172.             @ LINE+1,1 SAY ' '
  173.             EJECT
  174.             SET DEVI TO SCRE
  175.           ELSE
  176.             IF COUNT=0
  177.               STOR COUNT+1 TO COUNT
  178.             ENDIF
  179.             DO COUNTER
  180.               IF COUNT=4
  181.                 @ LINE,15 SAY EPA1+SPACE(4)+TOT1+SPACE(6)+EPA2+SPACE(4)+;
  182. TOT2+SPACE(6)+EPA3+SPACE(4)+TOT3+SPACE(6)+EPA4+SPACE(4)+TOT4
  183.                 STOR LINE+1 TO LINE
  184.                 STOR 0 TO COUNT
  185.                 IF LINE=MAX
  186.                   STOR 2 TO LINE
  187.                   EJECT
  188.                 ENDIF
  189.               ENDIF
  190.               IF COUNT=3
  191.                 @ LINE,15 SAY EPA1+SPACE(4)+TOT1+SPACE(6)+EPA2+;
  192. SPACE(4)+TOT2+SPACE(6)+EPA3+SPACE(4)+TOT3
  193.                 STOR LINE+1 TO LINE
  194.                 STOR 0 TO COUNT
  195.                 IF LINE=MAX
  196.                   STOR 2 TO LINE
  197.                   EJECT
  198.                 ENDIF
  199.               ENDIF
  200.               IF COUNT=2
  201.                 @ LINE,15 SAY EPA1+SPACE(4)+TOT1+SPACE(6)+EPA2+;
  202. SPACE(4)+TOT2
  203.                 STOR 0 TO COUNT
  204.                 STOR LINE+1 TO LINE
  205.                 IF LINE=MAX
  206.                   STOR 2 TO LINE
  207.                   EJECT
  208.                 ENDIF
  209.               ENDIF
  210.               IF COUNT=1
  211.                 @ LINE,15 SAY EPA1+SPACE(4)+TOT1
  212.                 STOR 0 TO COUNT
  213.                 STOR LINE+1 TO LINE
  214.                 IF LINE=MAX
  215.                   STOR 2 TO LINE
  216.                   EJECT
  217.                 ENDIF
  218.               ENDIF
  219.             ENDDO
  220.           ENDIF
  221.         ENDDO
  222.       ENDIF
  223.     ENDDO
  224.   ENDIF
  225.   SELECT A
  226.   GO TOP
  227.   SET ORDER TO 2
  228.   ERASE TOTS.DBF
  229.   SET FIELDS TO STCODE, TON
  230.   TOTAL ON STCODE TO TOTS FIELDS TON
  231.   SELECT B
  232.   USE TOTS
  233.   IF STCODE=' '
  234.     SKIP
  235.   ELSE
  236.     DO WHIL END='F'
  237.       SET DEVI TO PRIN
  238.       IF LINE=2
  239.         @ LINE,16 SAY 'Listing of State Waste Codes and '+;
  240.         'Disposal Volumes'
  241.         STOR LINE+2 TO LINE
  242.         @ LINE,15 SAY 'Code     Tons      Code     Tons      '+;
  243. 'Code     Tons      Code     Tons'
  244.         STOR LINE+1 TO LINE
  245.         @ LINE,14 SAY REPLICATE('*',53)
  246.         STOR LINE+2 TO LINE
  247.       ELSE
  248.         DO WHIL STCODE<>' '
  249.           IF LINE=MAX
  250.             EJECT
  251.             STOR 2 TO LINE
  252.           ENDIF
  253.           IF EOF()
  254.             @ LINE+1,1 SAY ' '
  255.             EJECT
  256.             SET DEVI TO SCRE
  257.           ELSE
  258.             IF COUNT=0
  259.               STOR COUNT+1 TO COUNT
  260.             ENDIF
  261.             DO COUNTERS
  262.               IF COUNT=4
  263.                 @ LINE,15 SAY ST1+SPACE(4)+TOT1+SPACE(6)+ST2+;
  264. SPACE(4)+TOT2+SPACE(6)+ST3+SPACE(4)+TOT3+SPACE(6)+ST4+SPACE(4)+;
  265. TOT4
  266.                  STOR LINE+1 TO LINE
  267.                  STOR 0 TO COUNT
  268.                  IF LINE=MAX
  269.                    STOR 2 TO LINE
  270.                    EJECT
  271.                  ENDIF
  272.                ENDIF
  273.                IF COUNT=3
  274.                  @ LINE,15 SAY ST1+SPACE(4)+TOT1+SPACE(6)+ST2+;
  275. SPACE(4)+TOT2+SPACE(6)+ST3+SPACE(4)+TOT3
  276.                  STOR LINE+1 TO LINE
  277.                  STOR 0 TO COUNT
  278.                  IF LINE=MAX
  279.                    STOR 2 TO LINE
  280.                    EJECT
  281.                  ENDIF
  282.                ENDIF
  283.                IF COUNT=2
  284.                  @ LINE,15 SAY ST1+SPACE(4)+TOT1+SPACE(6)+ST2+;
  285. SPACE(4)+TOT2
  286.                  STOR LINE+1 TO LINE
  287.                  STOR 0 TO COUNT
  288.                  IF LINE=MAX
  289.                    STOR 2 TO LINE
  290.                    EJECT
  291.                  ENDIF
  292.                ENDIF
  293.                IF COUNT=1
  294.                  @ LINE,15 SAY ST1+SPACE(4)+TOT1
  295.                  STOR LINE+1 TO LINE
  296.                  STOR 0 TO COUNT
  297.                  IF LINE=MAX
  298.                    STOR 2 TO LINE
  299.                    EJECT
  300.                  ENDIF
  301.                ENDIF
  302.              ENDDO
  303.            ENDIF
  304.          ENDDO
  305.        ENDIF
  306.      ENDDO
  307.    ENDIF
  308.    CLOSE DATA
  309.    ERASE TOTS.DBF
  310.    ERASE EPAWST.NDX
  311.    ERASE STWST.NDX
  312.  ENDDO
  313.   CASE CHOICE='5'
  314. @ 7,0 CLEA
  315. STOR 'F' TO END
  316. STOR 2 TO LINE
  317. STOR 60 TO MAX
  318. STOR 0 TO COUNT
  319. STOR 000000 TO TOT1, TOT2, TOT3, TOT4
  320. STOR SPACE(3) TO H1, H2, H3, H4
  321. @ 10,7 SAY 'A listing of Waste Handling Codes, each with total'+;
  322. ' volume handled.'
  323. @ 12,7 SAY 'will be printed.  Report start date : '+START+' and end'+;
  324. ' date : '+STOP
  325. DO WHIL END='F'
  326.   SELECT A
  327.   USE WASTE
  328.   COPY TO TEMP FIELDS HAND1, TON
  329.   SELECT B
  330.   USE TEMP
  331.   SELECT A
  332.   GO TOP
  333.   DO WHIL .NOT. EOF()
  334.     SELECT B
  335.     APPEN BLAN
  336.     REPL HAND1 WITH A->HAND2
  337.     REPL TON WITH A->TON
  338.     APPEN BLAN
  339.     REPL HAND1 WITH A->HAND3
  340.     REPL TON WITH A->TON
  341.     APPEN BLAN
  342.     REPL HAND1 WITH A->HAND4
  343.     REPL TON WITH A->TON
  344.     SELECT A
  345.     SKIP
  346.   ENDDO
  347.   SELECT B
  348.   INDEX ON HAND1 TO TEMP
  349.   GO TOP
  350.   TOTAL ON HAND1 TO TEMP1 FIELDS TON
  351.   SELECT C
  352.   USE TEMP1
  353.   IF HAND1=' '
  354.     SKIP
  355.   ELSE
  356.     DO WHIL END='F'
  357.       SET DEVI TO PRIN
  358.       IF LINE=2
  359.         @ LINE,18 SAY 'Listing of Waste Handling Codes and Volumes.'
  360.         STOR LINE+2 TO LINE
  361.         @ LINE,15 SAY 'Code     Tons      Code     Tons      Code'+;
  362. '     Tons      Code     Tons'
  363.         STOR LINE+1 TO LINE
  364.         @ LINE,14 SAY REPLICATE('*',53)
  365.         STOR LINE+2 TO LINE
  366.       ELSE
  367.         DO WHIL HAND1<>' '
  368.           IF LINE=MAX
  369.             EJECT
  370.             STOR 2 TO LINE
  371.           ENDIF
  372.           IF EOF()
  373.             @ LINE+1,1 SAY ' '
  374.             EJECT
  375.             SET DEVI TO SCRE
  376.           ELSE
  377.             IF COUNT=0
  378.               STOR COUNT+1 TO COUNT
  379.             ENDIF
  380.             DO COUNTER5
  381.               IF COUNT=4
  382.                 @ LINE,15 SAY H1+SPACE(4)+TOT1+SPACE(6)+H2+SPACE(4)+;
  383.                 TOT2+SPACE(6)+H3+SPACE(4)+TOT3+SPACE(6)+H4+SPACE(4)+;
  384.                 TOT4
  385.                 STOR LINE+1 TO LINE
  386.                 STOR 0 TO COUNT
  387.                 IF LINE=MAX
  388.                   STOR 2 TO LINE
  389.                   EJECT
  390.                 ENDIF
  391.               ENDIF
  392.               IF COUNT=3
  393.                 @ LINE,15 SAY H1+SPACE(4)+TOT1+SPACE(6)+H2+SPACE(4)+;
  394.                 TOT2+SPACE(6)+H3+SPACE(4)+TOT3
  395.                 STOR LINE+1 TO LINE
  396.                 STOR 0 TO COUNT
  397.                 IF LINE=MAX
  398.                   STOR 2 TO LINE
  399.                   EJECT
  400.                 ENDIF
  401.               ENDIF
  402.               IF COUNT=2
  403.                 @ LINE,15 SAY H1+SPACE(4)+TOT1+SPACE(6)+H2+SPACE(4)+;
  404.                 TOT2
  405.                 STOR LINE+1 TO LINE
  406.                 STOR 0 TO COUNT
  407.                 IF LINE=MAX
  408.                   STOR 2 TO LINE
  409.                   EJECT
  410.                 ENDIF
  411.               ENDIF
  412.               IF COUNT=1
  413.                 @ LINE,15 SAY H1+SPACE(4)+TOT1
  414.                 STOR LINE+1 TO LINE
  415.                 STOR 0 TO COUNT
  416.                 IF LINE=MAX
  417.                   STOR 2 TO LINE
  418.                   EJECT
  419.                 ENDIF
  420.               ENDIF
  421.             ENDDO
  422.           ENDIF
  423.         ENDDO
  424.       ENDIF
  425.     ENDDO
  426.   ENDIF
  427.   CLOSE DATA
  428.   ERASE TEMP.DBF
  429.   ERASE TEMP.NDX
  430.   ERASE TEMP1.DBF
  431. ENDDO
  432.   CASE CHOICE='R'
  433.     CLEA
  434.     RETURN
  435.   OTHERWISE
  436.     ?CHR(7)
  437.     STOR ' 'TO CHOICE
  438. ENDCASE
  439.